// src/mock/index.js

import Mock from 'mockjs'

// 示例数据

const data = Mock.mock({
  'users|5-10': [
    {
      'id|+1': 1,

      name: '@name',

      'age|20-30': 1,

      city: '@city',
    },
  ],
})

// 示例数据

const getFormData = Mock.mock({
  account: Mock.mock('@string'),
  password: Mock.mock('@string'),
  name: Mock.mock('@string'),
  sex: 0, // *性别: 0:男 1:女
  hobby: [], // *爱好: 0:男 1:女
  phone: Mock.mock('@string'), // 手机号码
  qq: Mock.mock('@string'), // qq
  accountType: Mock.mock('@string'), // *用户类型: 0: 手机注册 1: 论坛注册 2: 管理平台添加
  email: Mock.mock('@email'), // 邮箱
  desc: Mock.mock('@string'), // 描述
  number: Mock.mock('@number'), // 计算器
  status: 0, // *状态: 0：停用，1：启用(默认为1)',
})

// 示例数据

const getHobbs = Mock.mock({
  'array|5': [
    {
      label: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      value: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
    },
  ],
})

// 示例数据

const getTable = Mock.mock({
  'array|15': [
    {
      ecifCustNo: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      limitNo: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      custName: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      id: function () {
        return Mock.mock('@id') // id
      },
    },
  ],
})

// 示例数据

const getTable2 = Mock.mock({
  'array|15': [
    {
      ecifCustNo: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      limitNo: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      name2: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      name3: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      name4: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      name5: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      name6: function () {
        return Mock.mock('@ctitle') // 中文姓名
      },
      id: function () {
        return Mock.mock('@id') // id
      },
    },
  ],
})

// 拦截请求并返回模拟数据

Mock.mock('/api/users', 'get', {
  status: 200,
  message: 'success',
  data,
})

// 拦截请求并返回模拟数据
Mock.mock('/api/getForm', 'get', {
  status: 200,
  message: 'success',
  obj: getFormData,
})

// 拦截请求并返回模拟数据
Mock.mock('/api/getHobbs', 'get', {
  status: 200,
  message: 'success',
  list: getHobbs.array,
})

// 拦截请求并返回模拟数据
Mock.mock('/api/table', 'get', {
  status: 200,
  message: 'success',
  list: getTable.array,
})

// 拦截请求并返回模拟数据
Mock.mock('/api/table2', 'get', {
  status: 200,
  message: 'success',
  list: getTable2.array,
})
